$(function () {
    init();
    function init() {
        eventList();
    }

    //绑定一坨事件
    function eventList() {
        //2.点击注册  验证各种数据是否合法
        $("#register_btn").on("tap",function () {
            // console.log(123);
            
            /* 
            1.获取一坨输入框的值
            2.挨个验证
            3.通过验证 再发送请求 完成注册
                注册失败>给出用户提示
                注册成功>跳转>登录页面
            */

            //2.1 获取输入框输入的值
            var user_txt = $("#user_txt").val().trim();
            var pwd_txt = $("#pwd_txt").val().trim();
            var pwd_txt2 = $("#pwd_txt2").val().trim();
            var vcode_txt = $("#vcode_txt").val().trim();

            /* 
            1.prop和attr 都是可以获取属性
            2.新版的jq或者zepto对他们进行分类了
            3.prop主要是来获取元素自身就有的属性(id class href)的(注意)
            4.attr 主要是来获取自定义属性
            */
            var isChk = $("#agree_chk").prop("checked");

            //2.2验证是否合法
            //验证手机号码
            if (!user_txt || !$.checkPhone(user_txt)) {
                mui.toast("手机不合法");
                return;
            }

            //验证密码 长度不能少于6位数
            if (!pwd_txt || pwd_txt.length < 6) {
                mui.toast("密码不合法");
                return;
            }

            //验证密码2 判断两个密码是否一样
            if (pwd_txt != pwd_txt2) {
                mui.toast("两次密码不一致");
                return;
            }
            
            //验证验证码 长度不等于 6 非法
            if (!vcode_txt || vcode_txt.length != 6) {
                mui.toast("验证码不合法");
                return;
            }

            //验证是否勾选了我同意
            if (!isChk) {
                mui.toast("下次记得勾选哟!!!");
                return;
            }
            console.log("通过验证");
            
            // username	是	用户名
            // password	是	用户密码
            // mobile	是	用户手机号
            // vCode	是	验证码

            //2.3 构造函数
            var params = {
                username:user_txt,
                password:pwd_txt,
                mobile:user_txt,
                vCode:vcode_txt
            };
            // console.log(params);
            
            //2.4 发送登录请求 将注册数据发送到后台登录
            $.post(location.origin + "/user/register", params,function (data) {
                // console.log(data);
                
                //判断注册是否成功
                if (data&&data.success) {
                    //提示用户注册成功
                    mui.toast("注册成功");
                    //设置定时器,一秒后再跳转页面
                    setTimeout(function () {
                        location.href="./login.html";
                    },1000);
                }else{
                    //注册失败,提示用户
                    mui.toast(data.message);
                    return;
                }
            })

        })


        //1.点击验证码
        $("#vcode_btn").on("tap",function () {
            /* 
        1.获取手机号码
        2.手机号码合法性检查
            2.1 非法给用户提示 return
            2.2 合法
                再送请求
                修改按钮的样式 倒计时
        3.改变按钮的样式 并且 让用户不能反复点击 添加一个属性 disabled:一个被禁用的按钮.
        */

        //1.1 获取手机号码
        //获取手机号框里面的值 并且 取出 两边的空格
        var user_txt = $("#user_txt").val().trim();
        // console.log(user_txt);
        
        //1.2 验证合法性
        //验证手机号框里面是否有值 或者  输入的手机号不合法
        if (!user_txt || !$.checkPhone(user_txt)) {
            //提示用户
            mui.toast("手机号不合法");
            return;
        }

        //1.3 向后台发送验证码的请求
        //正常的获取验证码,需要手机号码  
        //接口不是完善的,因为验证码是要发送到手机号码的
            $.get(location.origin + "/user/vCode",function (data) {
                //只能靠打印的方法获取后台给出的验证码
                console.log(data);
                //1.4 禁用按钮   attr 主要是来获取自定义属性
                $("#vcode_btn").attr("disabled","disabled");

                // 1.5 修改文字提示
                var times = 5;
                $("#vcode_btn").html(times + "秒后再获取");

                //1.6 开启定时器
                var timeId = setInterval(function () {
                    //每隔一秒--
                    times--;
                    $("#vcode_btn").html(times + "秒后再获取");

                    //1.7 判断是否时间到了,按钮再次可以点击
                    if (times == 0) {
                        //清除定时器
                        clearInterval(timeId);

                        //修改文字提示
                        $("#vcode_btn").html("获取验证码");

                        //移出禁用disabled属性
                        $("#vcode_btn").removeAttr("disabled");
                    }
                },1000)
            })
        });

        
    }
})